Садржај
Пример моделовања - факултет
Пример моделовања - продаја дигиталних композиција
Пројектни задатак - моделовање
Погледи
Пројектни задатак

Задаци - групне функције и једна табела

Сви задаци који следе могу да се провежбају и у систему SQL Server Management Studio.

Упити се пишу и покрећу када се кликне New Query након што се покрене систем SQL Server и кликне на креирану базу Pesme у прозору Object Explorer. Фајл са упитима SQLQuery1.sql може, али и не мора да се сачува.

Након што се унесе једна команда, кликне се на дугме Execute. Уколико се у простору за писање команди налази више њих, потребно је обележити ону коју желимо да покренемо. Ако има више база података, обавезно проверити да ли је поред овог дугмета назив базе у којој желите да вршите упите.

../_images/slika_433a.png

Сви наредни SELECT упити обрађују податке из базе података фиктивне компаније за продају музичких композиција (углавном песама). Следи списак свих табела са колонама. Примарни кључеви су истакнути болдом, а страни италиком.

../_images/slika_433b.png
  1. Израчунати колико укупно гигабајта заузимају све композиције.

SELECT SUM(velicina) / (1024.0 * 1024.0 * 1024.0) AS GB
FROM kompozicija;
../_images/slika_435p1.png
  1. Одредити колико милисекунди траје најкраћа, а колико најдужа композиција.

SELECT Min(trajanje) AS najkraca, Max(trajanje) AS najduza
FROM kompozicija;
../_images/slika_435p2.png
  1. Одредити укупан број жанрова.

SELECT COUNT(*)
FROM zanr
../_images/slika_435p3.png
  1. Одредити број различитих албума који садрже песме.

SELECT COUNT(*)
FROM zanr
../_images/slika_435p4.png
  1. Одредити број албума у табели албума.

SELECT COUNT(*)
FROM album
../_images/slika_435p5.png
  1. Одредити број композиција сваког жанра.

SELECT id_zanr, COUNT(*)
FROM kompozicija
GROUP BY id_zanr
../_images/slika_435p6.png
  1. Одредити укупну дужину свих песама на сваком албуму. Списак уредити по укупној дужини, од најкраћих до најдужих албума.

SELECT id_album, SUM(trajanje) AS trajanje_albuma
FROM kompozicija
GROUP BY id_album
ORDER BY trajanje_albuma
../_images/slika_435p7.png
  1. Одредити највећи број песама на некој листи.

SELECT COUNT(*) AS broj
FROM plejlista_kompozicija
GROUP BY id_plejlista
ORDER BY broj DESC
LIMIT 1
../_images/slika_435p8.png
  1. На основу свих наруџбеница одредити укупан промет компаније.



  1. Одредити просечни износ наруџбенице током 2010. године.



11. За сваког купца који је извршио неку наруџбину током 2011. године приказати укупан износ наруџбина које је извршио током те године. Резултате приказати заокружене на најближи цео број у нерастућем редоследу укупног износа наруџбина.



  1. За сваку годину приказати укупан број наруџбина. Резултат сортирати на основу године.



13. На табеле ставки наруџбина stavka_narudzbenice приказати укупан износ наруџбина на свакој наруџбеници (износ сваке ставке се добија множењем количине kolicina и јединичне цене cena, а укупан износ наруџбине се добија сабирањем свих овако израчунатих износа ставки са те наруџбине). Сваки износ заокружити на две децимале.



  1. За сваку државу из које постоји неки купац приказати укупан број купаца.



15. За сваку земљу из које постоји бар 5 купаца приказати укупан број купаца (резултат сортирати по броју купаца, нерастући).



16. Приказати идентификаторе жанрова за које је у понуди више од 10 сати музике.



17. За сваки жанр приказати број различитих типова медија на којима су снимане песме тог жанра (приказати идентификатор жанра и број типова медија).



(Created using Swinx, RunestoneComponents and PetljaDoc)
© 2022 Petlja
A- A+